CODE SEGMENT
    ASSUME CS:CODE      
START:
    MOV AH, 01H         ; 读取键盘输入并回显
    INT 21H             ; 键盘中断，输入的字符存入 AL 寄存器
    
    CMP AL, 'a'         ; 比较 AL 与字符 'a'
    JB DISPLAY          ; 若 AL < 'a'（非小写字母），跳转到 DISPLAY
    CMP AL, 'z'         ; 再比较 AL 与字符 'z'
    JA DISPLAY          ; 若 AL > 'z'（非小写字母），跳转到 DISPLAY
    SUB AL, 20H         ; 将小写字母转大写（ASCII 码减 20H，如 'a'→'A'）
    
DISPLAY:
    MOV DL, AL          ; 将待输出的字符存入 DL
    MOV AH, 02H         ; 显示 DL 中的字符
    INT 21H             ; 调用中断 21H 输出字符
    
    MOV AH, 4CH         ; 程序终止
    INT 21H             ; 结束程序
CODE ENDS
END START              